#ifndef MAPDIALOG_H
#define MAPDIALOG_H

#include <QDialog>
#include <QTcpSocket>
#include <QGraphicsScene>
#include <QGraphicsPixmapItem>
#include <QList>
#include "aprsgraphicsscene.h"
#include "baseStation.h"

namespace Ui {
    class MapDialog;
}

class MapDialog : public QDialog
{
    Q_OBJECT

public:
    explicit MapDialog(QWidget *parent = 0);
    void getMaps(QStringList maps);
    void plotTestPoint();
    void plotActualStation(QString callsign, char symbolTable, char symbolCode, float lat, float lon);
    void clearStation(QString callsign);
    void plotUser(QString callsign, QPixmap userIcon, QPointF *location);
    QString GetStationType(char, char);
    QPointF ConvertPixToLatLon(QPointF*);
    qreal ZoomLevel;
    ~MapDialog();

public slots:
    //void plotActualStation(QString callsign, char symbol, float lat, float lon);

private:
    Ui::MapDialog *ui;
    bool connectionStatus;
    QTcpSocket *socket;
    QString authname;
    QTextStream *stream;
    aprsGraphicsScene *scene;
    //QGraphicsScene *scene;
    QPixmap testIcon;
    QPixmap *background;
    QStringList SelectedMaps;
    //QList<basicStation*> qlist;
    QString MapToUse;
    void keyPressEvent(QKeyEvent *event);
    QPixmap map;
    void ZoomIn();
    void ZoomOut();
    //void ConnectToServer(QString, QString, QString, QString);

private slots:

};

#endif // MAPDIALOG_H
